// 引入 fs 模块用于文件和文件夹操作
const fs = require('fs');
// 引入 path 模块用于处理文件路径
const path = require('path');

// 定义文件夹名称
const folderName = 'filedir';
// 定义文件路径（位于filedir文件夹内）
const filePath = path.join(__dirname, folderName, 'file.txt');

// 提示用户输入要创建的文件夹
console.log('请输入要创建的文件夹：');
process.stdin.once('data', (folderInput) => {
  // 去除输入中的换行符等空白字符
  const folderCmd = folderInput.toString().trim();
  // 检查输入是否为 "mkdir filedir"
  if (folderCmd === 'mkdir filedir') {
    // 创建文件夹
    fs.mkdir(folderName, (err) => {
      if (err) {
        console.error('创建文件夹失败：', err);
        return;
      }
      console.log(`文件夹 ${folderName} 创建成功！`);
      // 提示用户输入要创建的文件
      console.log('请输入要创建的文件：');
      process.stdin.once('data', (fileInput) => {
        const fileCmd = fileInput.toString().trim();
        // 检查输入是否为 "touch file.txt"
        if (fileCmd === 'touch file.txt') {
          // 写入文件内容
          fs.writeFile(filePath, 'hello node', (err) => {
            if (err) {
              console.error('创建文件失败：', err);
              return;
            }
            console.log(`文件 ${filePath} 创建成功，内容为 "hello node"！`);
            // 提示用户输入要删除的文件
            console.log('请输入要删除的文件：');
            process.stdin.once('data', (deleteInput) => {
              const deleteCmd = deleteInput.toString().trim();
              // 检查输入是否为 "delete file.txt"
              if (deleteCmd === 'delete file.txt') {
                // 删除文件
                fs.unlink(filePath, (err) => {
                  if (err) {
                    console.error('删除文件失败：', err);
                    return;
                  }
                  console.log(`文件 ${filePath} 删除成功！`);
                  // 退出程序
                  process.exit(0);
                });
              } else {
                console.error('无效的删除命令，请输入 "delete file.txt"');
                process.exit(1);
              }
            });
          });
        } else {
          console.error('无效的创建文件命令，请输入 "touch file.txt"');
          process.exit(1);
        }
      });
    });
  } else {
    console.error('无效的创建文件夹命令，请输入 "mkdir filedir"');
    process.exit(1);
  }
});